<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>mixin混入</title>
    <script src="./js/vue.js"></script>
</head>
<body>
    <!-- 提供了一种灵活的方式，一个混入的对象，可以混入到组件和配置对象中 -->

    <div class="box">
        <h1>{{msg}}</h1>
        <button @click="zheshu">vm自身方法</button>
        <button @click="sunwei">全局混入的方法</button>
        <h1>{{info}}</h1>
        <button @click="yangyang">局部混入</button>
    </div>
    <hr>
    <div class="box1">
        <button @click="sunwei">全局混入的方法</button>
    </div>
    <script>
        //全局混入
        Vue.mixin({
            methods:{
                sunwei(){
                    console.log('这是孙伟！');
                }
            }
        })
        //局部混入
        //1、创建对象
        const mixin = {
            data:{
                info:'局部混入的msg'
            },
            methods:{
                yangyang(){
                    console.log('这是洋洋！')
                },
                sunwei(){
                    console.log('同名方法，局部混入覆盖全局混入！')
                }
            }
        }
        const vm = new Vue({
            el:".box",
            data:{
                msg:'都看黑板啦！'
            },
            methods:{
                zheshu(){
                    console.log('这是哲书！')
                }
            },
            //引入mixin
            mixins:[mixin]
        })
        const vm1 = new Vue({
            el:'.box1'
        })
    </script>
</body>
</html>